package com.qys.livesMall.shop.modal.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * @menu ShopRechargeWithdrawalVO
 * @date 2023/06/07 9:23
 */
@Data
public class ShopRechargeWithdrawalVO implements Serializable {

    private Long id;

    /**
     * 用户id
     */
    @Schema(description = "用户id")
    private Long userId;

    /**
     * 用户名称
     */
    @Schema(description = "用户名称")
    private String userName;

    /**
     * 店铺id
     */
    @Schema(description = "店铺id")
    private Long shopId;

    /**
     * 店铺名称
     */
    @Schema(description = "店铺名称")
    private String shopName;
    /**
     * 订单号
     */
    @Schema(description = "订单号")
    private String orderNo;

    /**
     * 类型 1：充值，2：提现
     */
    @Schema(description = "类型 1：充值，2：提现")
    private String type;

    /**
     * 金额
     */
    @Schema(description = "金额")
    private BigDecimal amount;

    /**
     * 实际金额
     */
    @Schema(description = "实际金额")
    private BigDecimal actualArrivalAmount;

    /**
     * 支付方式
     */
    @Schema(description = "支付方式")
    private String payMethod;

    /**
     * 创建时间
     */
    @Schema(description = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+0")
    private LocalDateTime createDate;

    /**
     * 状态 0：待审核，1：审核通过，-1：审核不通过
     */
    @Schema(description = "状态 0：待审核，1：审核通过，-1：审核不通过")
    private String status;

    /**
     * 凭证图片
     */
    @Schema(description = "凭证图片")
    private String voucherImg;

    //代理名称
    @Schema(description = "代理名称")
    private String agentName;

    //代理账号
    @Schema(description = "代理账号")
    private String agentAccount;

    @Schema(description = "昵称")
    private String nickName;

    @Schema(description = "层级")
    private Integer storey;

    @Schema(description = "打款方式(0银行卡,1usdt,2BIT)")
    private Byte paymentMethod;

    @Schema(description = "实际收到金额")
    private BigDecimal realAmount;

    @Schema(description = "国家")
    private String country;

    @Schema(description = "审核状态(0提交,1已审核,2审核不通过)")
    private Byte auditType;

    @Schema(description = "银行名称")
    private String bankName;

    @Schema(description = "转账截图")
    private String img;

    @Schema(description = "用户充/提次数")
    private Integer num;

    @Schema(description = "是否充值")
    private Integer isRecharge;

    @Schema(description = "同注册IP数")
    private Integer ipRegisterNumber;

    @Schema(description = "同注册活跃IP数")
    private Integer ipActiveNumber;

    @Schema(description = "接收地址")
    private String receiveAddress;

    @Schema(description = "支付时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+0")
    private LocalDateTime paymentTime;

    @Schema(description = "通道ID")
    private Integer channelId;

    @Schema(description = "通道名称")
    private String channelName;

    @Schema(description = "最后操作IP")
    private String finalOperateIp;
}

